iT邦幫忙

2024 iThome 鐵人賽

DAY 11
0
Python

自主學習Python網路爬蟲-PTT爬蟲、Hahow爬蟲、Yahoo電影爬蟲實作系列 第 11

Day11 藉由影片教學學習Python基礎語法

  • 分享至 

  • xImage
  •  

今天要分享的內容是args/kwargs模組-Module以及作用域
首先第一個要分享的是args/kwargs
#args(arguments):任意數量的參數( * ),打包進tuple中
#kwargs(keyword arguments:(
),打包進dictionary中

1.args

def add(*args):
    total=0 #從零開始加
    for arg in args: #用for迴圈把args中的arg迭代出來
        print(f"args:{arg}")
        total += arg #把args中的數一一加進total裡
    return total #回傳total值
print(add(1,4,9)) #輸入幾個參數都可以

輸出結果為:
https://ithelp.ithome.com.tw/upload/images/20240921/20167787XY0CYYTYVI.png
2.kwargs

def print_info(**kwargs): #用**把kwargs印出
    for key,value in kwargs.items(): #要用字典的方法操作,字典如要把key&value迭代出的話需要用items()方法
        print(f"key:{key},value:{value}")
print_info(name="Alice",age="25",occupation="工程師") #可傳入任意數量的參數,然後key&value皆為正確的

輸出結果為:
https://ithelp.ithome.com.tw/upload/images/20240921/20167787P2mAPuDboK.png
接著要分享的是模組-Module
1.輸出pi(π)/pow(次方)

import math as m #用縮寫m去表示math,會用關鍵字"as"來接
#help(math) #想知道math的模組有哪些方法可使用help()
print(m.pi)
print(m.pow(4,2))

輸出結果為:
3.141592653589793
16.0
2.輸出ceil(無條件進位)/floor(無條件捨去)/round(四捨五入)

import math as m
num=20.6
print(m.ceil(num))
print(m.floor(num))
print(round(num)) #用round()方法已改為內建方法,因此不需要加"m."

輸出結果為:
21
20
21
3.輸出pi(π)

from math import pi
print(pi) #不須用math來調用

輸出結果為:3.141592653589793
4.
https://ithelp.ithome.com.tw/upload/images/20240921/20167787DC8HUTdmqC.png
https://ithelp.ithome.com.tw/upload/images/20240921/20167787VwGx2ediSV.png
輸出結果為:
https://ithelp.ithome.com.tw/upload/images/20240921/201677873ss4PubWZh.png
最後要分享的是Python中的作用域
#變數範圍與作用域,使用一個變數時,要先按一定的順序去尋找變數
#作用域的順序為LEGB
#L - local 區域
#E - enclosed
#G - global 全域
#B - built-in
程式碼與輸出結果如下圖:https://ithelp.ithome.com.tw/upload/images/20240921/20167787sUHhisgtyz.jpg


這是我今天的分享,謝謝大家!
參考網址:https://www.youtube.com/watch?v=lvH4-4iYjgs&list=LL&index=4


上一篇
Day10 藉由影片教學學習Python基礎語法
下一篇
Day12 藉由影片教學學習Python基礎語法
系列文
自主學習Python網路爬蟲-PTT爬蟲、Hahow爬蟲、Yahoo電影爬蟲實作30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言